<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN">
<html>
<head>
<title>SYS_TIME_DelayUS Function</title>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <meta name="generator" content="Doc-O-Matic" />
    <meta http-equiv="Content-Style-Type" content="text/css" />
    <link rel="STYLESHEET" href="default.css" type="text/css" />

<script type="text/javascript" src="scripts.js"></script>
</head>
<body class="Element700" onload="onBodyLoadEx('frames.html', 'topic', '01233.html');" onmousedown="onBodyMouseDown();">

<!-- Begin Popups -->

<!-- End Popups -->

<!-- Begin Page Header -->
<div class="Element710" id="areafixed">
<div class="Element94">
<a href="01259.html" target="topic">System Service Libraries Help</a> &gt; <a href="00759.html" target="topic">Time System Service Library Help</a> &gt; <a href="00760.html" target="topic">Library Interface</a> &gt; c) Callback and Delay Functions &gt; <a href="01233.html" target="topic">SYS_TIME_DelayUS Function</a></div>
<div class="Element92">
<table width="100%" cellspacing="0" cellpadding="0">
<tr><td width="25%">
<div class="Element1">
MPLAB Harmony Core Help</div>
</td><td width="25%">
<div class="Element2">
<a href="contents.html" target="tocidx">Contents</a> | <a href="00007.html" target="topic">Home</a></div>
</td><td width="25%">
<div class="Element90">
<a href="01232.html" target="topic">Previous</a> | <a href="00760.html" target="topic">Up</a> | <a href="01231.html" target="topic">Next</a></div>
</td><td width="25%">
<div class="Element96">
<a href="mailto:docerrors@microchip.com&subject=MPLAB Harmony Documentation Feedback (Topic ID: SYS_TIME_DelayUS@uint32_t@SYS_TIME_HANDLE* Topic Title: SYS_TIME_DelayUS Function)&body=Thank you for your feedback! Please include a description of your feedback, and indicate whether you are reporting an an error in the documentation or an enhancement.">Documentation Feedback</a><br> <a href="http://support.microchip.com" target="_blank">Microchip Support</a></div>
</td></tr></table><div class="Element5">
SYS_TIME_DelayUS Function</div>
</div>
</div>

<!-- End Page Header -->

<!-- Begin Client Area -->
<div class="Element720" id="areascroll">
<div class="Element721">

<!-- Begin Page Content -->
<a name="PageContent"></a><div class="Element58">
<a name="4465736372697074696F6E"></a><div class="Element11">
<div class="Element10">
<p class="Element10">
The function will internally create a single shot timer which will be auto deleted when the application calls <a href="01231.html" target="topic">SYS_TIME_DelayIsComplete</a> routine and the delay has expired. The function will return immediately, requiring the caller to use <a href="01231.html" target="topic">SYS_TIME_DelayIsComplete</a> routine to check the delay timer's status.</p></div>
</div>
<a name="43"></a><div class="Element99">
C</div>
<div class="Element101"><div class="Element100"><pre class="Element100"><a href="01240.html" target="topic">SYS_TIME_RESULT</a> <strong><span style="color: #000000">SYS_TIME_DelayUS</span></strong>(
    uint32_t <strong><span style="color: #000000">us</span></strong>, 
    <a href="01235.html" target="topic">SYS_TIME_HANDLE</a>* <strong><span style="color: #000000">handle</span></strong>
);</pre></div></div>
<a name="507265636F6E646974696F6E73"></a><div class="Element14">
Preconditions</div>
<div class="Element11">
<div class="Element10">
<p class="Element10">
The <a href="01238.html" target="topic">SYS_TIME_Initialize</a> function must have been called before calling this function.</p></div>
</div>
<a name="506172616D6574657273"></a><div class="Element14">
Parameters</div>
<div class="Element11">
<div class="Element10">
<div class="Element312">
<div class="TableDiv">
<table cellspacing="0" class="Table3">
<tr>
<td class="Element300" valign="top" width="35%">
<div class="Element301">
Parameters&nbsp;</div></td><td class="Element304" valign="top" width="65%">
<div class="Element305">
Description&nbsp;</div></td></tr><tr>
<td class="Element302" valign="top" width="35%">
<div class="Element303">
us&nbsp;</div></td><td class="Element306" valign="top" width="65%">
<div class="Element307">
The desired number of microseconds to delay.<br>&nbsp;</div></td></tr><tr>
<td class="Element302" valign="top" width="35%">
<div class="Element303">
handle&nbsp;</div></td><td class="Element306" valign="top" width="65%">
<div class="Element307">
Address of the variable to receive the timer handle value.&nbsp;</div></td></tr></table></div></div>
</div>
</div>
<a name="52657475726E73"></a><div class="Element14">
Returns</div>
<div class="Element11">
<div class="Element10">
<p class="Element10">
SYS_TIME_SUCCESS - If the call succeeded.&nbsp;</p>
<p class="Element10">
SYS_TIME_ERROR - If the call failed, either because the requested delay is zero, or the passed handle is invalid or there is not enough room to queue in the request in the SYS Time's internal queue.</p></div>
</div>
<a name="52656D61726B73"></a><div class="Element14">
Remarks</div>
<div class="Element11">
<div class="Element10">
<p class="Element10">
Will delay the requested number of microseconds or longer depending on system performance. In tick-based mode, the requested delay will be ceiled to the next timer tick. For example, if the timer tick is set to 1 msec and the requested delay is 1500 usec, a delay of 2 msec will be generated.&nbsp;</p>
<p class="Element10">
Delay values of 0 will return SYS_TIME_ERROR.&nbsp;</p>
<p class="Element10">
Will return SYS_TIME_ERROR if timer handle pointer is NULL.</p></div>
</div>
<a name="4578616D706C65"></a><div class="Element14">
Example</div>
<div class="Element11">
<div class="Element10">
<div class="Element13"><div class="Element12"><pre class="Element12">
<a href="01235.html" target="topic">SYS_TIME_HANDLE</a> timer = <a href="01236.html" target="topic">SYS_TIME_HANDLE_INVALID</a>;

<strong><span style="color: #000080">if</span></strong> (SYS_TIME_DelayUS(50, &amp;timer) != SYS_TIME_SUCCESS)
{
    <i><span style="color: #008000">// Handle error</span></i>
}
<strong><span style="color: #000080">else</span></strong> <strong><span style="color: #000080">if</span></strong> (<a href="01231.html" target="topic">SYS_TIME_DelayIsComplete</a>(timer) != <strong><span style="color: #000080">true</span></strong>)
{
    <i><span style="color: #008000">// Wait till the delay has not expired</span></i>
    <strong><span style="color: #000080">while</span></strong> (<a href="01231.html" target="topic">SYS_TIME_DelayIsComplete</a>(timer) == <strong><span style="color: #000080">false</span></strong>);
}</pre></div></div>
</div>
</div>
</div>
<!-- End Page Content -->

<!-- Begin Page Footer -->
<div class="Element95">
<a href="01259.html" target="topic">System Service Libraries Help</a> &gt; <a href="00759.html" target="topic">Time System Service Library Help</a> &gt; <a href="00760.html" target="topic">Library Interface</a> &gt; c) Callback and Delay Functions &gt; <a href="01233.html" target="topic">SYS_TIME_DelayUS Function</a></div>
<div class="Element93">
<table width="100%" cellspacing="0" cellpadding="0">
<tr><td width="25%">
<div class="Element3">
MPLAB Harmony Core Help</div>
</td><td width="25%">
<div class="Element4">
<a href="contents.html" target="tocidx">Contents</a> | <a href="00007.html" target="topic">Home</a></div>
</td><td width="25%">
<div class="Element91">
<a href="01232.html" target="topic">Previous</a> | <a href="00760.html" target="topic">Up</a> | <a href="01231.html" target="topic">Next</a></div>
</td><td width="25%">
<div class="Element97">
<a href="mailto:docerrors@microchip.com&subject=MPLAB Harmony Documentation Feedback (Topic ID: SYS_TIME_DelayUS@uint32_t@SYS_TIME_HANDLE* Topic Title: SYS_TIME_DelayUS Function)&body=Thank you for your feedback! Please include a description of your feedback, and indicate whether you are reporting an an error in the documentation or an enhancement.">Documentation Feedback</a><br> <a href="http://support.microchip.com" target="_blank">Microchip Support</a></div>
</td></tr></table></div>

<!-- End Page Footer -->
</div>
</div>

<!-- End Client Area -->
</body></html>